package com.xx.library.mapper;

import com.xx.library.entity.BorrowRecord;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
import java.util.List;

//将接口标记为 MyBatis 的映射器接口
@Mapper
public interface BorrowRecordMapper {
    // 根据ID查询借阅记录
    BorrowRecord selectById(@Param("id") Long id);
    
    // 查询用户的所有借阅记录
    List<BorrowRecord> selectByUserId(@Param("userId") Long userId);
    
    // 查询书籍的所有借阅记录
    List<BorrowRecord> selectByBookId(@Param("bookId") Long bookId);
    
    // 插入借阅记录
    int insert(BorrowRecord borrowRecord);
    
    // 更新借阅记录
    int update(BorrowRecord borrowRecord);
    
    // 根据条件查询借阅记录
    List<BorrowRecord> selectByCondition(BorrowRecord borrowRecord);
    
    // 查询用户当前借阅的书籍
    List<BorrowRecord> selectCurrentBorrows(@Param("userId") Long userId);
    
    // 查询逾期未还的借阅记录
    List<BorrowRecord> selectOverdueRecords();
} 